SQL NOT NULL Constraint क्या हैं?
आम तौर पर, एक कॉलम NULL मान रख सकता है।
NOT NULL बाधा किसी कॉलम को NULL मान स्वीकार न करने के लिए बाध्य करती है।
यह किसी फ़ील्ड को हमेशा एक मान रखने के लिए बाध्य करता है, जिसका अर्थ है कि इस फ़ील्ड में कोई मान जोड़े बिना कोई नया रिकॉर्ड नहीं डाला जा सकता है या कोई रिकॉर्ड अपडेट नहीं किया जा सकता है।
महत्वपूर्ण नोट:
NOT NULL बाधा किसी फ़ील्ड को कोई मान नहीं होने से रोकती है, जो डेटा अखंडता को बनाए रखने में मदद करती है।
क्रिएट टेबल में एसक्यूएल शून्य नहीं है
निम्नलिखित SQL यह सुनिश्चित करता है कि "व्यक्ति" तालिका बनाते समय "ID", "LastName", और "FirstName" कॉलम NULL मान स्वीकार नहीं कर सकते:
उदाहरण
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255) NOT NULL,
Age int
);
सहायता नोट:
तालिका बनाते समय महत्वपूर्ण स्तंभों के लिए NOT NULL बाधा का उपयोग करें ताकि वे खाली न रहें।
SQL परिवर्तन तालिका में शून्य नहीं है
"व्यक्ति" तालिका पहले ही बन जाने के बाद "आयु" कॉलम पर एक शून्य बाधा उत्पन्न करने के लिए निम्नलिखित SQL का उपयोग करें:
SQL Server / MS Access:
ALTER TABLE Persons
ALTER COLUMN Age int NOT NULL;
MySQL / Oracle (पहले संस्करण 10G):
ALTER TABLE Persons
MODIFY COLUMN Age int NOT NULL;
Oracle 10G और बाद का संस्करण:
ALTER TABLE Persons
MODIFY Age int NOT NULL;
शैली के उदाहरण
उपयोगकर्ता तालिका
सभी उपयोगकर्ताओं के पास एक नाम और ईमेल होना चाहिए
CREATE TABLE Users (
UserID int NOT NULL,
UserName varchar(255) NOT NULL,
Email varchar(255) NOT NULL,
Phone varchar(20)
);
आदेशों की तालिका
ऑर्डर की तारीख और ग्राहक आईडी अनिवार्य है
CREATE TABLE Orders (
OrderID int NOT NULL,
CustomerID int NOT NULL,
OrderDate date NOT NULL,
ShipDate date
);
उत्पादों की तालिका
उत्पाद का नाम और कीमत खाली नहीं हो सकती
CREATE TABLE Products (
ProductID int NOT NULL,
ProductName varchar(255) NOT NULL,
Price decimal(10,2) NOT NULL,
Description text
);
NOT NULL बाधा के लाभ
आंकड़ा शुचिता
- महत्वपूर्ण डेटा को खाली छोड़े जाने से रोकता है
- डेटा सटीकता सुनिश्चित करता है
- गलत डेटा प्रविष्टि को रोकता है
खोज क्षमता
- NULL परीक्षणों की आवश्यकता कम हो जाती है
- क्वेरी प्रदर्शन में सुधार करता है
- डेटा विश्लेषण की सुविधा प्रदान करता है
अनुप्रयोग तर्क
- एप्लिकेशन कोडिंग को सरल बनाता है
- NULL परीक्षण आवश्यकता को हटा देता है
- अधिक पूर्वानुमानित डेटा संरचना प्रदान करता है